
let baseURL
let token
uni.getStorage({
	key:'baseURL',
	success(res) {
		baseURL= res.data
	},
	fail(err) {
		console.log(JSON.stringify(err.data));
		if(!err.data){
			baseURL = "http://dmsapp.smxwheel.com:8100/api/"   //三门峡正式库
			// baseURL = "http://172.29.253.140:8000/api/"  //摩洛哥地址
			//baseURL = "http://dms.smxwheel.com:8101/api/"   //三门峡测试库
			//baseURL = "http://112.25.209.232:8100/api/"   //无锡外网http://192.168.1.106:8300
			// baseURL = "http://192.168.1.106:8300/api/"  //本地地址
			
			uni.setStorage({
				key:'internetName',
				data:'外网'
			});
			uni.setStorage({
				key: 'baseURL',
				data: baseURL
			});
		}
	},
	complete(e) {
		console.log(JSON.stringify(e));
	}
})


console.log("124323"+baseURL);


uni.getStorage({
	key:'languageValue',
	success(res) {
		
	},
	fail(err) {
		console.log(JSON.stringify(err.data));
		uni.setStorage({
			key:'languageValue',
			data:'简体中文'
		})
	},
	complete(e) {
		console.log(JSON.stringify(e));
	}
})
// 数据请求
const	requestAjax = function(url, params, method, successFn, failFn, complete){
		
		uni.getStorage({
			key:'Authorization_Token',
			success(res) {
				token= res.data
			}
		})
		// 延时未来解决异步取baseURL和token
		setTimeout(function () {
			console.log("baseURL==="+baseURL+url);
			uni.request({
				url:baseURL+url,
				data: method=='GET' ? params : {'':JSON.stringify(params)},
				method:method,
				header:{
					"Authorization_Token": token,
					"content-type":'application/x-www-form-urlencoded'      //数据转换为 query string。
				},
				success: (res) => {
					console.log('request==='+JSON.stringify(res))
					if(res.statusCode==401 || res.statusCode=="401"){
						uni.showToast({
							title: '登录超时,重新登录中...',
							icon:"none",
							duration: 1500
						});
						
						uni.reLaunch({
							url:'/pages/login/login'
						})
						
						// 重新自动登录
// 						let username
// 						let password
// 						
// 						uni.getStorage({
// 							key:'username',
// 							success:(res)=> {
// 								username = res.data
// 							}
// 						})
// 						uni.getStorage({
// 							key:'password',
// 							success:(res)=> {
// 								password = res.data
// 							}
// 						})
// 						// 延时未来解决异步取username和password
// 						setTimeout(function(){
// 							login('core/user/Login',{
// 									'UserCode':username,
// 									'Password':password,
// 									'DeviceType':1},
// 									res=>{
// 										if (res.success==true) {
// 											uni.setStorage({
// 												key: 'Authorization_Token',
// 												data: res.msg
// 											})
// 											uni.reLaunch({
// 												url:'../../index/index'
// 											})
// 										} else{
// 											uni.showToast({
// 												title: '自动登录失败',
// 												icon:"none",
// 												duration: 2000
// 											});
// 											uni.reLaunch({
// 												url:'../../login/login'
// 											})
// 										}
// 										
// 									},err=>{
// 										uni.showToast({
// 											title: '网络异常或者请求超时',
// 											icon:"none",
// 											duration: 2000
// 										});
// 										uni.reLaunch({
// 											url:'../../login/login'
// 										})
// 									})
// 						}, 300)
						
					}else{
						return successFn(JSON.parse(res.data))
					}
				},
				fail: (err) => {
					uni.showToast({
						title: '网络异常或者请求超时',
						icon:"none",
						duration: 2000
					});
					 return failFn(JSON.parse(err.data))
				},
				complete: (e) => {
					// uni.hideToast()
					return complete(e)
				}
			})
		},300)
	}
// 登录
const login = function (url, params, successFn, failFn, complete) {
	uni.getStorage({
		key:'baseURL',
		success(res) {
			baseURL = res.data
		}
	})
	// 延时未来解决异步取baseURL和token
	setTimeout(function () {
		console.log("baseURL==="+baseURL+url);
		uni.request({
			url:baseURL+url,
			data:params,
			method:'GET',
			success: (res) => {
				console.log('login==='+JSON.stringify(res))
				return successFn(JSON.parse(res.data)) 
			},
			fail: (err) => {
				uni.showToast({
					title: '网络异常或者请求超时',
					icon:"none",
					duration: 2000
				});
				return failFn(JSON.parse(err.data))
			},
			complete: (e) => {
				return complete(e)
			}
		})
		
	},300)
	
}

// 文件提交
const uploadFile = function (url, params, name, formData, successFn, failFn, complete) {
	uni.getStorage({
		key:'baseURL',
		success(res) {
			baseURL= res.data
		}
	})
	uni.getStorage({
		key:'Authorization_Token',
		success(res) {
			token= res.data
		}
	})
	// 延时未来解决异步取baseURL和token
	setTimeout(function () {
		uni.uploadFile({
			url: baseURL+url,
			filePath: params,
			name: name,
			header: {
				'Authorization_Token': token  //自定义请求头信息token
			},
			formData: formData,
			success: (res) => {
				console.log('uploadFile==='+JSON.stringify(res))
				return successFn(JSON.parse(res.data)) 
			},
			fail: (err) => {
				uni.showToast({
					title: '网络异常或者请求超时',
					icon:"none",
					duration: 2000
				});
				return failFn(JSON.parse(err.data))
			},
			complete: (e) => {
				return complete(e)
			}
		});
	},300)
}

export default {login,requestAjax,uploadFile}